package com.wtwd.campus.send;

import com.wtwd.campus.common.Constants;
import com.wtwd.campus.entity.MqMessage;

public class SenderFactory {
    public static Sender createSender(MqMessage mm) {
        Sender sender = null;
        if (Constants.ACTIVE_DEVICE_LOCATION.equals(mm.getType())) {
            sender = new QueryLocationSender();
        } else if (Constants.DEVICE_PARAMETERS.equals(mm.getType())) {
            sender = new DeviceParametersSender();
        } else if (Constants.ICCID_AND_SIM.equals(mm.getType())) {
            sender = new DeviceSimAndIccidSender();
        } else if (Constants.DEVICE_IMEID.equals(mm.getType())) {
            sender = new DeviceImeIdSender();
        } else if (Constants.SET_TEMPORARY_CONTROL_CENTER.equals(mm.getType())) {
            sender = new SetTemporaryControlSender();
        } else if (Constants.SET_DEFAULT_CONTROL_CENTER.equals(mm.getType())) {
            sender = new SetDefaultControlSender();
        } else if (Constants.SET_WORK_MODE.equals(mm.getType())) {
            sender = new DeviceWorkModeSender();
        } else if (Constants.SET_UPLOAD_TIME.equals(mm.getType())) {
            sender = new DeviceUploadTimeSender();
        } else if (Constants.AUTO_CHANGE_WORK_MODE.equals(mm.getType())) {
            sender = new AutoChangeWorkModeSender();
        } else if (Constants.SET_MONITOR_NUMBER.equals(mm.getType())) {
            sender = new MonitorNumberSender();
        } else if (Constants.SET_NO_DISTURB_TIME.equals(mm.getType())) {
            sender = new NoDisturbTimeSender();
        } else if (Constants.SET_NO_DISTURB_SWITCH.equals(mm.getType())) {
            sender = new NoDisturbSwitchSender();
        } else if (Constants.SET_PDOP_THRESHOLD_VALUE.equals(mm.getType())) {
            sender = new SetPDOPThresholdValueSender();
        } else if (Constants.SET_NO_DISTURB_CONTROLLER.equals(mm.getType())) {
            sender = new SetNoDisturbControllerSender();
        } else if (Constants.SET_SOS_DIAL_SWITCH.equals(mm.getType())) {
            sender = new SetSOSDialSwitchSender();
        } else if (Constants.FACTORY_RESET.equals(mm.getType())) {
            sender = new FactoryResetSender();
        } else if (Constants.DEVICE_RESTART.equals(mm.getType())) {
            sender = new DeviceRestartSender();
        } else if (Constants.SOFTWARE_TURN_OFF.equals(mm.getType())) {
            sender = new SoftwareTurnOffSender();
        } else if (Constants.VOLUME_ADJUSTMENT.equals(mm.getType())) {
            sender = new VolumeAdjustmentSender();
        } else if (Constants.CHANGE_DEVICE_ID.equals(mm.getType())) {
            sender = new ChangeDeviceIdSender();
        } else if (Constants.SINGLE_WHITELIST_NUMBER.equals(mm.getType())) {
            sender = new SetSingleWhiterListNumberSender();
        } else if (Constants.ALL_WHITELIST_NUMBER.equals(mm.getType())) {
            sender = new SetAllWhiterListNumberSender();
        } else if (Constants.WHITELIST_SWITCH.equals(mm.getType())) {
            sender = new SetWhiteListSwitchSender();
        } else if (Constants.WIRELESS_ATTENDANCE_SWITCH.equals(mm.getType())) {
            sender = new SetWirelessAttendanceSwitchSender();
        } else if (Constants.CIRCLE_POSITION_SETTING.equals(mm.getType())) {
            sender = new SetCirclePositionSender();
        } else if (Constants.POLYGON_POSITION_SETTING.equals(mm.getType())) {
            sender = new SetPolygonPositionSender();
        } else if (Constants.REPLY_ELECTRONIC_SING_IN.equals(mm.getType())) {
            sender = new ReplyElectronicSignInSender();
        } else if (Constants.REPLY_ELECTRONIC_SING_OUT.equals(mm.getType())) {
            sender = new ReplyElectronicSignOutSender();
        } else if (Constants.UPGRADE_DEVICE.equals(mm.getType())) {
            sender = new UpgradeDeviceSender();
        } else if (Constants.SOS_WARNING.equals(mm.getType())) {
            sender = new ReplySOSWarningSender();
        } else if (Constants.LOW_BATTERY_WARNING.equals(mm.getType())) {
            sender = new ReplyLowBatteryWarningSender();
        } else if (Constants.NOT_LOCATE_HEART.equals(mm.getType())) {
            sender = new ReplyNotLocateHeartSender();
        } else if (Constants.ACTIVE_UPLOAD_STEP.equals(mm.getType())) {
            sender = new ReplyUploadStepSender();
        } else if (Constants.GET_DEVICE_STEP.equals(mm.getType())) {
            sender = new GetDeviceStepSender();
        } else if (Constants.CALL_RECORDS.equals(mm.getType())) {
            sender = new ReplyUploadCallRecordsSender();
        } else if (Constants.MONITOR_RECORDS.equals(mm.getType())) {
            sender = new ReplyMonitorRecordsSender();
        } else if (Constants.RESET_M1_CARD.equals(mm.getType())) {
            sender = new ResetMCardSender();
        } else if (Constants.REMOVE_BINDING.equals(mm.getType())) {
            sender = new RemoveBindingSender();
        } else if (Constants.WEATHER.equals(mm.getType())) {
            sender = new ReplyWeatherSender();
        } else if (Constants.ALL_SOS_PHONE.equals(mm.getType())) {
            sender = new SetAllSoSSender();
        } else if (Constants.SHUT_DOWN_SILENT.equals(mm.getType())) {
            sender = new SetShutDownSilentSender();
        } else if (Constants.DEVICE_BINDING_STATUS.equals(mm.getType())) {
            sender = new SetBindingStatusSender();
        } else if (Constants.ALARM_CLOCK.equals(mm.getType())) {
            sender = new SetAlarmClockSender();
        } else if (Constants.DELETE_CLOCK.equals(mm.getType())) {
            sender = new DelAlarmSender();
        } else if (Constants.SEND_TEXT.equals(mm.getType())) {
            sender = new DeviceTextSender();
        } else if (Constants.VCOM_NOT_DISTURB.equals(mm.getType())) {
            sender = new VcomNotDisturbSender();
        } else if (Constants.VCOM_NOTICE_MESSAGE.equals(mm.getType())) {
            sender = new VcomNoticeMessageSender();
        } else if (Constants.VCOM_SHORT_MESSAGE.equals(mm.getType())) {
            sender = new VcomShortMessageSender();
        } else if (Constants.GET_LT_AUTH_KEY.equals(mm.getType())) {
            sender = new GetLTAuthKeySender();
        } else if (Constants.GET_PHONE.equals(mm.getType())) {
            sender = new GetPhoneSender();
        } else if (Constants.APP_INSTALLATION.equals(mm.getType())) {
            sender = new SetAppInstallation();
        } else if (Constants.APP_DISABLE.equals(mm.getType())) {
            sender = new SetAppDisable();
        } else if (Constants.UPLOAD_APP.equals(mm.getType())) {
            sender = new ReplyUploadApp();
        } else if (Constants.UPLOAD_APP_FILE.equals(mm.getType())) {
            sender = new ReplyUploadAppFile();
        } else if (Constants.LOCK_NET.equals(mm.getType())) {
            sender= new SetLockNet();
        } else if (Constants.LOCK_CARD.equals(mm.getType())) {
            sender= new SetLockCard();
        } else if (Constants.LOCK_DEVICE.equals(mm.getType())) {
            sender= new SetLockDevice();
        }else if (Constants.GET_LOCK_NET.equalsIgnoreCase(mm.getType())){
            sender= new GetLockNetSender();
        }if (Constants.GET_LOCK_CARD.equalsIgnoreCase(mm.getType())){
            sender= new GetLockCardSender();
        }if (Constants.GET_LOCK_DEVICE.equalsIgnoreCase(mm.getType())){
            sender= new GetLockDeviceSender();
        }
        return sender;
    }
}
